package com.nightwalkbuddy.dao;

import com.nightwalkbuddy.dto.MapPair;
import com.nightwalkbuddy.dto.MapPath;

/**
 * interface class
 * @author htisabel
 *
 */
public interface IPathDAO {

	/**
	 * populate collection with long/lat pair for each UC campus location
	 * The campus locations and long/lat data is available on Google Code wiki.
	 */
	public void setUCLocations();

	/**
	 * get long/lat pair for user specified UC campus location
	 * @param id location id
	 * @return MapPair of long/lat combo
	 */
	public MapPair<Double, Double> getUCLocation(int id); 
	
	/**
	 * Persist the given path.
	 * 
	 * @param path
	 *            the path to save
	 * @throws Exception
	 *             any problem in the underlying persistence mechanism.
	 */
	public void save(String username, String path) throws Exception;

	/**
	 * Fetch the path with the given name
	 * 
	 * @return MapPath object that represents path of Points
	 * @throws Exception
	 *             any problem in the underlying persistence mechanism.
	 */
	public MapPath fetch(int id, String pathName) throws Exception;

}
